Skip to main content
This forum is closed to new posts and responses. Individual names altered for privacy purposes. The information contained in this website is provided for informational purposes only and should not be construed as a forum for customer support requests. Any customer support requests should be directed to the official HCL customer support channels below:

HCL Software Customer Support Portal for U.S. Federal Government clients
HCL Software Customer Support Portal

HCL Notes/Domino 8.5 Forum (includes Notes Traveler)

HCL Notes/Domino 8.5 Forum (includes Notes Traveler)

Previous Next
Subject: Seeking help with a BOM and Configuration Management design
Feedback Type: Question
Product Area: Domino Designer on Eclipse (DDE)
Technical Area: Application Development
Platform: Not Applicable
Release: 8.5.3
Reproducible: Not applicable

Bill of Material. If you've worked with or designed BOM systems - you're who I want to talk to. This is going to be a longish post because the issue is fairly complex. I'm going to assume that you know what a BOM is and what indented means. I'll provide the simplest example I can that shows the problem I'm trying to solve and you'll understand that the actual problem is a bit more complex.

Assume that there are two BOM structures I need to manage. One is the actual as defined BOM and the second is a serialized BOM structure that represents a built device (its serialized configuration). The goal is to provide the user with a tabular representation of how the As Built (AB) BOM compares to the As Defined (AD) BOM. We'll assume initially that the AD and AB are intended to match exactly.

The indented AD BOM under discussion looks like this:

TopLevelPN
Module1PN
Component1_PN
Component2_PN
SubComponent1_PN
SubComponent2_PN
Module2PN
Component3_PN
Component2_PN
SubComponent1_PN
SubComponent2_PN

The key concept here is that Component2_PN appears in different parts of the BOM and is identical in each place; i.e. it has multiple 'where used' locations.

A completed serialized AB BOM would look something like this:

TopLevelPN - SN 111
Module1PN - SN 222
Component1_PN - SN 333
Component2_PN - SN 444
SubComponent1_PN - SN 555
SubComponent2_PN - SN 666
Module2PN - SN 777
Component3_PN - SN 888
Component2_PN - SN 999
SubComponent1_PN - SN AAA
SubComponent2_PN - SN BBB

An incomplete serialized AB BOM would look something like this:

TopLevelPN - SN 111
Module1PN - SN 222
Component1_PN - SN 333
Component2_PN - SN 444
SubComponent1_PN - SN 555
SubComponent2_PN - SN 666
Module2PN - SN 777
Component3_PN - SN 888
Component2_PN
SubComponent1_PN
SubComponent2_PN

What I want to do, is give the user a nice table that clearly shows for each item in the AD BOM if the part exists in the AB BOM. If it does, show the SN, if it's missing, add a 'part missing' flag to that row.

The AD and AB BOM data structures look like they would in any ERP system, one field for the item and another for the thing it reports to (where Used or Next Higher Assembly). I do not use an item master as I don't think it's needed for this system.

AD BOM
Item PN : Where Used PN

AB BOM - same structure but includes a serial number also
Item PN-SN : Where Used PN-SN

I have code in place that lets me build either the AD BOM or the AB BOM; that all works fine. I start at the top PN and then use a recursive routine to find the items that report to it.

First wrinkle:
If the AD and AB structures were guaranteed to be identical, then I could just create an index number for each item in the AD and AB BOMs and assume that AD-PN(i) should be the same as AB-PN(i). This assumption is invalid. AD BOM structures change over time so the AD BOM in place with an item begins build may not be the same as the AD BOM in place when we try and reconcile the AD with the AB BOM. We have no way to create expected BOM structures by SN so when I reconcile any AB BOM it's against the current version of the AD BOM.

Second wrinkle:
The AD BOM also includes 'quantity required' so for SubComponent1_PN, I may need 3 but only have 2 and need to flag the AB BOM as missing one PN.

These two wrinkles make it impossible to just assign an index number (or row number if you want to think about this an Excel file output) to the AD and AB BOM items.

I've written code that works as long as we don't see duplicate BOM structures within the overall BOM. What I cannot figure out is how to clearly identify that SubComponent1_PN - SN AAA reports to Component2_PN - SN 999 and NOT to Component2_PN - SN 444.

Told you it was going to be longish...

I'm not looking for code, what I need is an idea to help me break the mental roadblock I've driven myself into. If you've worked with BOM and Configuration Management systems, this has to be a problem that's been solved before - what's the trick?

I am explicitly not posting my code here because I don't want anyone who helps to be bounded by my assumptions.

That's about as simple as I can make it; any ideas? Thanks in advance for any feedback.

Doug


Feedback number WEBB8T2FYC created by ~Martha Lopjipyskioden on 04/04/2012

Status: Open
Comments:

Seeking help with a BOM and Configu... (~Martha Lopjipy... 4.Apr.12)
. . Figured it out. (~Martha Lopjipy... 4.Apr.12)




Printer-friendly

Search this forum

Member Tools


RSS Feeds

 RSS feedsRSS
All forum posts RSS
All main topics RSS